﻿using System;
using System.CodeDom.Compiler;
using System.Diagnostics;
using Google.Protobuf;
using Google.Protobuf.Reflection;

namespace EggLink.DanhengServer.Proto
{
	// Token: 0x0200071F RID: 1823
	[DebuggerDisplay("{ToString(),nq}")]
	public sealed class GetLevelRewardScRsp : IMessage<GetLevelRewardScRsp>, IMessage, IEquatable<GetLevelRewardScRsp>, IDeepCloneable<GetLevelRewardScRsp>, IBufferMessage
	{
		// Token: 0x1700175B RID: 5979
		// (get) Token: 0x06005205 RID: 20997 RVA: 0x000DEA05 File Offset: 0x000DCC05
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageParser<GetLevelRewardScRsp> Parser
		{
			get
			{
				return GetLevelRewardScRsp._parser;
			}
		}

		// Token: 0x1700175C RID: 5980
		// (get) Token: 0x06005206 RID: 20998 RVA: 0x000DEA0C File Offset: 0x000DCC0C
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public static MessageDescriptor Descriptor
		{
			get
			{
				return GetLevelRewardScRspReflection.Descriptor.MessageTypes[0];
			}
		}

		// Token: 0x1700175D RID: 5981
		// (get) Token: 0x06005207 RID: 20999 RVA: 0x000DEA1E File Offset: 0x000DCC1E
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		MessageDescriptor IMessage.Descriptor
		{
			get
			{
				return GetLevelRewardScRsp.Descriptor;
			}
		}

		// Token: 0x06005208 RID: 21000 RVA: 0x000DEA25 File Offset: 0x000DCC25
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public GetLevelRewardScRsp()
		{
		}

		// Token: 0x06005209 RID: 21001 RVA: 0x000DEA30 File Offset: 0x000DCC30
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public GetLevelRewardScRsp(GetLevelRewardScRsp other) : this()
		{
			this.retcode_ = other.retcode_;
			this.reward_ = ((other.reward_ != null) ? other.reward_.Clone() : null);
			this.level_ = other.level_;
			this._unknownFields = UnknownFieldSet.Clone(other._unknownFields);
		}

		// Token: 0x0600520A RID: 21002 RVA: 0x000DEA88 File Offset: 0x000DCC88
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public GetLevelRewardScRsp Clone()
		{
			return new GetLevelRewardScRsp(this);
		}

		// Token: 0x1700175E RID: 5982
		// (get) Token: 0x0600520B RID: 21003 RVA: 0x000DEA90 File Offset: 0x000DCC90
		// (set) Token: 0x0600520C RID: 21004 RVA: 0x000DEA98 File Offset: 0x000DCC98
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint Retcode
		{
			get
			{
				return this.retcode_;
			}
			set
			{
				this.retcode_ = value;
			}
		}

		// Token: 0x1700175F RID: 5983
		// (get) Token: 0x0600520D RID: 21005 RVA: 0x000DEAA1 File Offset: 0x000DCCA1
		// (set) Token: 0x0600520E RID: 21006 RVA: 0x000DEAA9 File Offset: 0x000DCCA9
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public ItemList Reward
		{
			get
			{
				return this.reward_;
			}
			set
			{
				this.reward_ = value;
			}
		}

		// Token: 0x17001760 RID: 5984
		// (get) Token: 0x0600520F RID: 21007 RVA: 0x000DEAB2 File Offset: 0x000DCCB2
		// (set) Token: 0x06005210 RID: 21008 RVA: 0x000DEABA File Offset: 0x000DCCBA
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public uint Level
		{
			get
			{
				return this.level_;
			}
			set
			{
				this.level_ = value;
			}
		}

		// Token: 0x06005211 RID: 21009 RVA: 0x000DEAC3 File Offset: 0x000DCCC3
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override bool Equals(object other)
		{
			return this.Equals(other as GetLevelRewardScRsp);
		}

		// Token: 0x06005212 RID: 21010 RVA: 0x000DEAD4 File Offset: 0x000DCCD4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public bool Equals(GetLevelRewardScRsp other)
		{
			return other != null && (other == this || (this.Retcode == other.Retcode && object.Equals(this.Reward, other.Reward) && this.Level == other.Level && object.Equals(this._unknownFields, other._unknownFields)));
		}

		// Token: 0x06005213 RID: 21011 RVA: 0x000DEB34 File Offset: 0x000DCD34
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override int GetHashCode()
		{
			int num = 1;
			if (this.Retcode != 0U)
			{
				num ^= this.Retcode.GetHashCode();
			}
			if (this.reward_ != null)
			{
				num ^= this.Reward.GetHashCode();
			}
			if (this.Level != 0U)
			{
				num ^= this.Level.GetHashCode();
			}
			if (this._unknownFields != null)
			{
				num ^= this._unknownFields.GetHashCode();
			}
			return num;
		}

		// Token: 0x06005214 RID: 21012 RVA: 0x000DEBA2 File Offset: 0x000DCDA2
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public override string ToString()
		{
			return JsonFormatter.ToDiagnosticString(this);
		}

		// Token: 0x06005215 RID: 21013 RVA: 0x000DEBAA File Offset: 0x000DCDAA
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void WriteTo(CodedOutputStream output)
		{
			output.WriteRawMessage(this);
		}

		// Token: 0x06005216 RID: 21014 RVA: 0x000DEBB4 File Offset: 0x000DCDB4
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalWriteTo(ref WriteContext output)
		{
			if (this.Retcode != 0U)
			{
				output.WriteRawTag(8);
				output.WriteUInt32(this.Retcode);
			}
			if (this.reward_ != null)
			{
				output.WriteRawTag(26);
				output.WriteMessage(this.Reward);
			}
			if (this.Level != 0U)
			{
				output.WriteRawTag(96);
				output.WriteUInt32(this.Level);
			}
			if (this._unknownFields != null)
			{
				this._unknownFields.WriteTo(ref output);
			}
		}

		// Token: 0x06005217 RID: 21015 RVA: 0x000DEC28 File Offset: 0x000DCE28
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public int CalculateSize()
		{
			int num = 0;
			if (this.Retcode != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.Retcode);
			}
			if (this.reward_ != null)
			{
				num += 1 + CodedOutputStream.ComputeMessageSize(this.Reward);
			}
			if (this.Level != 0U)
			{
				num += 1 + CodedOutputStream.ComputeUInt32Size(this.Level);
			}
			if (this._unknownFields != null)
			{
				num += this._unknownFields.CalculateSize();
			}
			return num;
		}

		// Token: 0x06005218 RID: 21016 RVA: 0x000DEC98 File Offset: 0x000DCE98
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(GetLevelRewardScRsp other)
		{
			if (other == null)
			{
				return;
			}
			if (other.Retcode != 0U)
			{
				this.Retcode = other.Retcode;
			}
			if (other.reward_ != null)
			{
				if (this.reward_ == null)
				{
					this.Reward = new ItemList();
				}
				this.Reward.MergeFrom(other.Reward);
			}
			if (other.Level != 0U)
			{
				this.Level = other.Level;
			}
			this._unknownFields = UnknownFieldSet.MergeFrom(this._unknownFields, other._unknownFields);
		}

		// Token: 0x06005219 RID: 21017 RVA: 0x000DED14 File Offset: 0x000DCF14
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		public void MergeFrom(CodedInputStream input)
		{
			input.ReadRawMessage(this);
		}

		// Token: 0x0600521A RID: 21018 RVA: 0x000DED20 File Offset: 0x000DCF20
		[DebuggerNonUserCode]
		[GeneratedCode("protoc", null)]
		void IBufferMessage.InternalMergeFrom(ref ParseContext input)
		{
			uint num;
			while ((num = input.ReadTag()) != 0U)
			{
				if (num != 8U)
				{
					if (num != 26U)
					{
						if (num != 96U)
						{
							this._unknownFields = UnknownFieldSet.MergeFieldFrom(this._unknownFields, ref input);
						}
						else
						{
							this.Level = input.ReadUInt32();
						}
					}
					else
					{
						if (this.reward_ == null)
						{
							this.Reward = new ItemList();
						}
						input.ReadMessage(this.Reward);
					}
				}
				else
				{
					this.Retcode = input.ReadUInt32();
				}
			}
		}

		// Token: 0x04002029 RID: 8233
		private static readonly MessageParser<GetLevelRewardScRsp> _parser = new MessageParser<GetLevelRewardScRsp>(() => new GetLevelRewardScRsp());

		// Token: 0x0400202A RID: 8234
		private UnknownFieldSet _unknownFields;

		// Token: 0x0400202B RID: 8235
		public const int RetcodeFieldNumber = 1;

		// Token: 0x0400202C RID: 8236
		private uint retcode_;

		// Token: 0x0400202D RID: 8237
		public const int RewardFieldNumber = 3;

		// Token: 0x0400202E RID: 8238
		private ItemList reward_;

		// Token: 0x0400202F RID: 8239
		public const int LevelFieldNumber = 12;

		// Token: 0x04002030 RID: 8240
		private uint level_;
	}
}
